package data_structure;


import java.util.LinkedList;
import java.util.List;

public class leetcode_0429 {
//    public List<List<Integer>> levelOrder(Node root) {
//        List<List<Integer>> list=new LinkedList<>();
//        if(root==null) return list;
//        LinkedList<Node> queue=new LinkedList<>();
//        LinkedList<Integer> num=new LinkedList<>();
//        queue.add(root);
//        num.add(0);
//        int current=0;
//        List<Integer> tem=new LinkedList<>();
//        while(!queue.isEmpty()){
//            Node node=queue.getFirst();
//            queue.removeFirst();
//            int number=num.getFirst();
//            num.removeFirst();
//            if(!node.children.isEmpty()){
//                int len=node.children.size();
//                for(int i=0;i<len;++i){
//                        queue.add(node.children.get(i));
//                        num.add(number+1);
//
//                }
//            }
//            if(number==current){
//                tem.add(node.val);
//            }
//            else{
//                list.add(new LinkedList<>(tem));
//                tem.clear();
//                tem.add(node.val);
//                current++;
//            }
//        }
//        list.add(new LinkedList<>(tem));
//        return list;
//    }
}
class Node{
    public int val;
    public List<Node> children;

    public Node() {}

    public Node(int _val) {
        val = _val;
    }

    public Node(int _val, List<Node> _children) {
        val = _val;
        children = _children;
    }
};